package com.fulihui.usercore.api;

import org.near.servicesupport.result.BaseResult;
import org.near.servicesupport.result.TSingleResult;

import com.fulihui.usercore.request.vcode.VcodeCheckRequest;
import com.fulihui.usercore.request.vcode.VcodeSendRequest;

/**
 * 无需修改
 * 用户验证码接口
 * Created by Willard.Hu on 2016/5/16.
 */
public interface UserVcodeService {
    /**
     * 发送验证码(耳多资讯)
     * @param request {@link VcodeSendRequest}
     * @return 返回接口调用结果 {@link BaseResult}
     */
    BaseResult informationSend(VcodeSendRequest request);
    /**
     * 发送验证码
     * @param request {@link VcodeSendRequest}
     * @return 返回接口调用结果 {@link BaseResult}
     */
    BaseResult send(VcodeSendRequest request);

    /**
     * 校验验证码
     * @param request {@link VcodeCheckRequest}
     * @return 返回 true-校验通过，false-校验失败
     */
    TSingleResult<Boolean> check(VcodeCheckRequest request);

    /**
     * 检验短信验证码，不删除key
     * @param request
     * @return
     */
    TSingleResult<Boolean> checkNotDeleteKey(VcodeCheckRequest request);
}
